Vue v-show Directive

শর্তসাপেক্ষে একটি উপাদানের দৃশ্যমানতা পরিবর্তন করতে v-শো ব্যবহার করুন

Example

আপনার নিজস্ব Vue সার্ভার পান

'showDiv'-এর মানের উপর নির্ভর করে একটি <div> উপাদানের দৃশ্যমানতা শর্তসাপেক্ষে পরিবর্তন করতে v-শো নির্দেশিকা ব্যবহার করে।

<div v-show="showDiv">This div tag can be hidden</div>

নীচে আরো উদাহরণ দেখুন.

Definition and Usage

ভি-শো নির্দেশিকা শর্তসাপেক্ষে একটি উপাদানের দৃশ্যমানতা পরিবর্তন করতে ব্যবহৃত হয়।

যখন v-show দ্বারা ব্যবহৃত এক্সপ্রেশনটি 'false' তে মূল্যায়ন করে, তখন CSS ডিসপ্লে প্রপার্টি 'none' তে সেট করা হয়, অন্যথায় CSS ডিসপ্লে প্রপার্টি ডিফল্ট ভ্যালুতে ফিরে আসে।

V-show এর সাথে একবার একটি উপাদান লোড হয়ে গেলে এবং DOM-এ বিদ্যমান থাকলে, শুধুমাত্র v-show এর মাধ্যমে এর দৃশ্যমানতা পরিবর্তিত হয়।

বিল্ট-ইন <Transition> এলিমেন্টের সাথে ব্যবহার করা হলে v-show ট্রানজিশন ক্লাস এবং ইভেন্ট ট্রিগার করতে পারে।

লাইফসাইকেল হুক যেমন মাউন্ট করা/আনমাউন্ট করা বা সক্রিয়/নিষ্ক্রিয় করা হয় না যখন কোনো বস্তুর দৃশ্যমানতা v-শোর মাধ্যমে পরিবর্তন করা হয়।

v-show vs. v-if

ভি-শো এবং ভি-ইফ নির্দেশিকাগুলি আপাতদৃষ্টিতে একই রকম কারণ তারা উভয়ই একটি উপাদানকে প্রদর্শিত বা না পরিবর্তন করে, তবে এখানে কিছু পার্থক্য রয়েছে:

v-show v-if
পরিবর্তন করার সময় DOM-এ একটি উপাদান তৈরি এবং ধ্বংস করা? না
যখন একটি উপাদান পরিবর্তন করা হয় তখন কি লাইফসাইকেল হুকগুলি মাউন্ট করা/আনমাউন্ট করা হয়? না
বিল্ট-ইন <Transition> এলিমেন্ট ব্যবহার করলে কি প্রস্থান এবং এন্ট্রি ইভেন্ট এবং ক্লাস ট্রিগার করে? হ্যাঁ
এটি একটি নেস্টেড <টেমপ্লেট> উপাদানের সাথে কাজ করে? না
v-else-if এবং v-else এর সাথে কি কাজ করে? না

More Examples

Example 1

একটি <div> উপাদানের দৃশ্যমানতা শর্তসাপেক্ষে পরিবর্তন করতে v-শো এবং v-যদি নির্দেশাবলী পৃষ্ঠা অনুসারে পৃষ্ঠা ব্যবহার করা হয়।

উদাহরণটি খুলুন, শর্তটি 'false' এ সেট করুন, তারপরে ডান ক্লিক করুন এবং পৃষ্ঠাটি অন্বেষণ করুন, দেখুন যে v-show সহ উপাদানটি এখনও DOM-এ রয়েছে।

<div id="app">
  <div v-show="showDiv">Div tag with v-show</div>
  <div v-if="showDiv">Div tag with v-if</div>
</div>

<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
<script>
  const app = Vue.createApp({
    data() {
      return {
        showDiv: true
      }
    }
  })
  app.mount('#app')
</script>

Example 2

একটি <p> উপাদান v-শোর সাথে দৃশ্যমান এবং আফটার-এন্টার ইভেন্টটিকে ট্রিগার করে।

<template>
  <h1>JavaScript Transition Hooks</h1>
  <p>This code hooks into "after-enter" so that after the initial animation is done, a method runs that displays a red div.</p>
  <button @click="pVisible=true">Create p-tag!</button><br>
  <Transition @after-enter="onAfterEnter">
    <p v-show="pVisible" id="p1">Hello World!</p>
  </Transition>
  <br>
  <div v-show="divVisible">This appears after the "enter-active" phase of the transition.</div>
</template>

<script>
export default {
  data() {
    return {
      pVisible: false,
      divVisible: false
    }
  },
  methods: {
    onAfterEnter() {
      this.divVisible = true;
    }
  }
}
</script>

<style scoped>
  .v-enter-active {
    animation: swirlAdded 1s;
  }
  @keyframes swirlAdded {
    from {
      opacity: 0;
      rotate: 0;
      scale: 0.1;
    }
    to {
      opacity: 1;
      rotate: 360deg;
      scale: 1;
    }
  }
  #p1, div {
    display: inline-block;
    padding: 10px;
    border: dashed black 1px;
  }
  #p1 {
    background-color: lightgreen;
  }
  div {
    background-color: lightcoral;
  }
</style>

Exercise

প্রশিক্ষণ:

Vue.js v-show v-if ?

v-শো দ্রুততর, v-যদি ধীর হয়
✗ ভুল! গতি শুধুমাত্র পার্থক্য নয়
v-show উপাদানটিকে DOM-এ রাখে, v-যদি DOM থেকে সরিয়ে দেয়
✓ ঠিক আছে! v-show CSS ডিসপ্লের সাথে লুকিয়ে রাখে, v-যদি DOM থেকে উপাদানটিকে সরিয়ে দেয়
v-show v-else এর সাথে কাজ করে, v-যদি না করে
✗ ভুল! v-যদি v-else দিয়ে কাজ করে, v-show করে না
শুধুমাত্র ভি-শো অ্যানিমেশনের সাথে কাজ করে
✗ ভুল! উভয়ই অ্যানিমেশন নিয়ে কাজ করে